Electronic forms are commonly used to collect information. One way in which to enable use of electronic forms is over a communication network, such as a local intranet or the Internet. A user may use an electronic form, for instance, through his or her network browser. The user's network browser may contact a network computer that is capable of enabling the browser to display and allow editing of the electronic form.
To enable the browser to display and allow editing of the network-enabled electronic form (a “network form”), a network computer may build a control tree when the form is first requested and in response to subsequent requests. To enable a user to interact with a form from start to finish, the network computer may receive and respond to dozens of requests. This may require the network computer to build dozens of control trees. Building numerous control trees, however, can require considerable processing and memory resources.
The network computer also traverses each control tree to provide the browser with view information (e.g., HyperText Markup Language—HTML). The network computer sends this view information to a user's browser over the network, which may require considerable time and network bandwidth. The time needed to send this information may also adversely affect a user's editing experience with the form, such as by causing the user to have to wait for his browser to receive the information before continuing to edit the form.
These problems with network forms are exacerbated when a network computer receives many requests related to the form, such as from many people using the same form. For each request, the network computer may need to build a control tree, traverse the control tree for viewing information, and send the view information to the user's network browser that made the request. This expends the network computer's resources, the communication network's bandwidth, and potentially slows each user's editing experience.